<!DOCTYPE html>
<!-- Generated by pkgdown: do not edit by hand --><html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><title>Find all Census blocks in a polygon, using internal point of block — get_blockpoints_in_shape • EJAM</title><!-- favicons --><link rel="icon" type="image/png" sizes="16x16" href="../favicon-16x16.png"><link rel="icon" type="image/png" sizes="32x32" href="../favicon-32x32.png"><link rel="apple-touch-icon" type="image/png" sizes="180x180" href="../apple-touch-icon.png"><link rel="apple-touch-icon" type="image/png" sizes="120x120" href="../apple-touch-icon-120x120.png"><link rel="apple-touch-icon" type="image/png" sizes="76x76" href="../apple-touch-icon-76x76.png"><link rel="apple-touch-icon" type="image/png" sizes="60x60" href="../apple-touch-icon-60x60.png"><script src="../deps/jquery-3.6.0/jquery-3.6.0.min.js"></script><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"><link href="../deps/bootstrap-5.3.1/bootstrap.min.css" rel="stylesheet"><script src="../deps/bootstrap-5.3.1/bootstrap.bundle.min.js"></script><link href="../deps/font-awesome-6.4.2/css/all.min.css" rel="stylesheet"><link href="../deps/font-awesome-6.4.2/css/v4-shims.min.css" rel="stylesheet"><script src="../deps/headroom-0.11.0/headroom.min.js"></script><script src="../deps/headroom-0.11.0/jQuery.headroom.min.js"></script><script src="../deps/bootstrap-toc-1.0.1/bootstrap-toc.min.js"></script><script src="../deps/clipboard.js-2.0.11/clipboard.min.js"></script><script src="../deps/search-1.0.0/autocomplete.jquery.min.js"></script><script src="../deps/search-1.0.0/fuse.min.js"></script><script src="../deps/search-1.0.0/mark.min.js"></script><!-- pkgdown --><script src="../pkgdown.js"></script><meta property="og:title" content="Find all Census blocks in a polygon, using internal point of block — get_blockpoints_in_shape"><meta name="description" content="Like getblocksnearby(), but for blocks in each polygon rather than
blocks near each facility. For analyzing all residents in certain zones
such as places at elevated risk, redlined areas, watersheds, etc."><meta property="og:description" content="Like getblocksnearby(), but for blocks in each polygon rather than
blocks near each facility. For analyzing all residents in certain zones
such as places at elevated risk, redlined areas, watersheds, etc."><meta property="og:image" content="https://usepa.github.io/EJAM/logo.svg"></head><body>
    <a href="#main" class="visually-hidden-focusable">Skip to contents</a>


    <nav class="navbar navbar-expand-lg fixed-top bg-light" data-bs-theme="light" aria-label="Site navigation"><div class="container">

    <a class="navbar-brand me-2" href="../index.html">EJAM</a>

    <small class="nav-text text-warning me-auto" data-bs-toggle="tooltip" data-bs-placement="bottom" title="Released version">2.32.0</small>


    <button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">
      <span class="navbar-toggler-icon"></span>
    </button>

    <div id="navbar" class="collapse navbar-collapse ms-3">
      <ul class="navbar-nav me-auto"><li class="active nav-item"><a class="nav-link" href="../reference/index.html">Reference</a></li>
<li class="nav-item dropdown">
  <button class="nav-link dropdown-toggle" type="button" id="dropdown-articles" data-bs-toggle="dropdown" aria-expanded="false" aria-haspopup="true">Articles</button>
  <ul class="dropdown-menu" aria-labelledby="dropdown-articles"><li><hr class="dropdown-divider"></li>
    <li><h6 class="dropdown-header" data-toc-skip>Overview for EJAM Users</h6></li>
    <li><a class="dropdown-item" href="../articles/0_whatis.html">What is EJAM</a></li>
    <li><a class="dropdown-item" href="../articles/0_webapp.html">Using EJAM</a></li>
    <li><hr class="dropdown-divider"></li>
    <li><h6 class="dropdown-header" data-toc-skip>For analysts using R</h6></li>
    <li><a class="dropdown-item" href="../articles/1_installing.html">Installing the EJAM R package</a></li>
    <li><a class="dropdown-item" href="../articles/2_quickstart.html">Quick Start Guide</a></li>
    <li><a class="dropdown-item" href="../articles/3_analyzing.html">Basics of Using EJAM for Analysis in RStudio</a></li>
    <li><a class="dropdown-item" href="../articles/4_advanced.html">Advanced Features</a></li>
  </ul></li>
<li class="nav-item"><a class="nav-link" href="../news/index.html">Changelog</a></li>
      </ul><ul class="navbar-nav"><li class="nav-item"><form class="form-inline" role="search">
 <input class="form-control" type="search" name="search-input" id="search-input" autocomplete="off" aria-label="Search site" placeholder="Search for" data-search-index="../search.json"></form></li>
<li class="nav-item"><a class="external-link nav-link" href="https://github.com/USEPA/EJAM/" aria-label="GitHub"><span class="fa fab fa-github fa-lg"></span></a></li>
      </ul></div>


  </div>
</nav><div class="container template-reference-topic">
<div class="row">
  <main id="main" class="col-md-9"><div class="page-header">
      <img src="../logo.svg" class="logo" alt=""><h1>Find all Census blocks in a polygon, using internal point of block</h1>
      <small class="dont-index">Source: <a href="https://github.com/USEPA/EJAM/blob/HEAD/R/get_blockpoints_in_shape.R" class="external-link"><code>R/get_blockpoints_in_shape.R</code></a></small>
      <div class="d-none name"><code>get_blockpoints_in_shape.Rd</code></div>
    </div>

    <div class="ref-description section level2">
    <p>Like <code><a href="getblocksnearby.html">getblocksnearby()</a></code>, but for blocks in each polygon rather than
blocks near each facility. For analyzing all residents in certain zones
such as places at elevated risk, redlined areas, watersheds, etc.</p>
    </div>

    <div class="section level2">
    <h2 id="ref-usage">Usage<a class="anchor" aria-label="anchor" href="#ref-usage"></a></h2>
    <div class="sourceCode"><pre class="sourceCode r"><code><span><span class="fu">get_blockpoints_in_shape</span><span class="op">(</span></span>
<span>  <span class="va">polys</span>,</span>
<span>  addedbuffermiles <span class="op">=</span> <span class="fl">0</span>,</span>
<span>  blocksnearby <span class="op">=</span> <span class="cn">NULL</span>,</span>
<span>  dissolved <span class="op">=</span> <span class="cn">FALSE</span>,</span>
<span>  safety_margin_ratio <span class="op">=</span> <span class="fl">1.1</span>,</span>
<span>  crs <span class="op">=</span> <span class="fl">4269</span>,</span>
<span>  updateProgress <span class="op">=</span> <span class="cn">NULL</span></span>
<span><span class="op">)</span></span></code></pre></div>
    </div>

    <div class="section level2">
    <h2 id="arguments">Arguments<a class="anchor" aria-label="anchor" href="#arguments"></a></h2>


<dl><dt id="arg-polys">polys<a class="anchor" aria-label="anchor" href="#arg-polys"></a></dt>
<dd><p>Spatial data as from sf::st_as_sf(), with
points as from <code><a href="shapefile_from_sitepoints.html">shapefile_from_sitepoints()</a></code>,
or a table of points with lat,lon columns that will first be converted here using that function,
or polygons</p></dd>


<dt id="arg-addedbuffermiles">addedbuffermiles<a class="anchor" aria-label="anchor" href="#arg-addedbuffermiles"></a></dt>
<dd><p>width of optional buffering to add to the points (or edges), in miles</p></dd>


<dt id="arg-blocksnearby">blocksnearby<a class="anchor" aria-label="anchor" href="#arg-blocksnearby"></a></dt>
<dd><p>optional table of blocks with blockid, etc (from which lat,lon can be looked up in blockpoints dt)</p></dd>


<dt id="arg-dissolved">dissolved<a class="anchor" aria-label="anchor" href="#arg-dissolved"></a></dt>
<dd><p>If TRUE, use sf::st_union(polys) to find unique blocks inside any one or more of polys</p></dd>


<dt id="arg-safety-margin-ratio">safety_margin_ratio<a class="anchor" aria-label="anchor" href="#arg-safety-margin-ratio"></a></dt>
<dd><p>multiplied by addedbuffermiles, how far to search for
blocks nearby using getblocksnearby(), before using those found to do the intersection via sf::</p></dd>


<dt id="arg-crs">crs<a class="anchor" aria-label="anchor" href="#arg-crs"></a></dt>
<dd><p>used in st_as_sf() and st_transform() and shape_buffered_from_shapefile_points(), crs = 4269 or Geodetic CRS NAD83</p></dd>


<dt id="arg-updateprogress">updateProgress<a class="anchor" aria-label="anchor" href="#arg-updateprogress"></a></dt>
<dd><p>optional Shiny progress bar to update</p></dd>

</dl></div>
    <div class="section level2">
    <h2 id="value">Value<a class="anchor" aria-label="anchor" href="#value"></a></h2>
    <p>Block points table for those blocks whose internal point is inside the buffer
which is just a circular buffer of specified radius if polys are just points.</p>
    </div>
    <div class="section level2">
    <h2 id="details">Details<a class="anchor" aria-label="anchor" href="#details"></a></h2>
    <p>This uses getblocksnearby() to get a very fast rough/good estimate of
which US block points are nearby (with a safety margin - see param below),
before then using sf:: to carefully identify which of those candidate blocks are actually
inside each polygon (e.g., circle) according to sf:: methods.</p>
<p>For circular buffers, just using getblocksnearby() should work and not need this function.</p>
<p>For noncircular polygons, buffered or not, this function will provide a way to very quickly
filter down to which of the millions of US blocks should be examined by the sf:: join / intersect,
since otherwise it takes forever for sf:: to check all US blocks.</p>
    </div>
    <div class="section level2">
    <h2 id="see-also">See also<a class="anchor" aria-label="anchor" href="#see-also"></a></h2>
    <div class="dont-index"><p><code>get_blockpoints_in_shape()</code> <code><a href="shapefile_from_sitepoints.html">shapefile_from_sitepoints()</a></code> <code><a href="shape_buffered_from_shapefile_points.html">shape_buffered_from_shapefile_points()</a></code></p></div>
    </div>

    <div class="section level2">
    <h2 id="ref-examples">Examples<a class="anchor" aria-label="anchor" href="#ref-examples"></a></h2>
    <div class="sourceCode"><pre class="sourceCode r"><code><span>  <span class="co"># y &lt;- get_blockpoints_in_shape()</span></span>
<span></span>
<span>  <span class="co"># x = shapefile_from_sitepoints(testpoints_n(2))</span></span>
<span>  <span class="co"># y = get_blockpoints_in_shape(x, 1)  # very very slow</span></span></code></pre></div>
    </div>
  </main><aside class="col-md-3"><nav id="toc" aria-label="Table of contents"><h2>On this page</h2>
    </nav></aside></div>


    <footer><div class="pkgdown-footer-left">
  <p>US EPA 2024</p>
</div>

<div class="pkgdown-footer-right">
  <p>EJAM Version 2.32.0</p>
</div>

    </footer></div>





  </body></html>

